#include<stdio.h>
#include<unistd.h>

int gval = 100; 

int main()
{
    printf("父进程开始执行，pid:%d\n",getpid());
    pid_t id = fork();
    if(id < 0)
    {
        perror("fork");
        return 1;
    }
    else if(id == 0)
    {
          printf("我是一个子进程，我的PID是:%d ,我的父进程id:%d , gval: %d\n",getpid(),getppid(),gval);
          sleep(5);
        //子进程
        while(1)
        {
            sleep(1);
          printf("子进程修改数据: %d -> %d",gval,200);
          gval = 200;
          printf("我是一个子进程，我的PID是:%d ,我的父进程id:%d\n",getpid(),getppid());
        }
    }
    else
    {
        //父进程 
        while(1)
        {
          sleep(1);
          printf("我是一个父进程，我的PID是:%d ,我的父进程id:%d,gval: %d \n",getpid(),getppid(),gval);
        }
    }

    printf("进程开始执行，pid:%d\n",getpid());


    //chdir("/home/fang/");
    //fopen("test.txt","w");
   // while(1)
   // {
   //   printf("我是一个进程，我的PID是:%d ,我的父进程id:%d\n",getpid(),getppid());
   //   sleep(1);
   // }
    return 0;
}
